package com.hopes.bizz.close.gis.service;

import com.hopes.bizz.close.basic.dto.ClosedRoadDTO;
import com.hopes.bizz.close.basic.entity.ClosedAccessControlEntity;
import com.hopes.bizz.close.basic.entity.ClosedControlAreaEntity;
import com.hopes.bizz.close.basic.entity.ClosedGateEntity;
import com.hopes.bizz.close.common.constant.CloseModuleEnums;
import com.hopes.bizz.close.gis.dto.AccessRecordDTO;
import com.hopes.bizz.close.gis.dto.GateRecordDTO;
import com.hopes.bizz.close.gis.vo.ClosedRoadVO;
import com.hopes.bizz.close.gis.vo.GateAccessLayerVO;
import com.hopes.bizz.close.gis.vo.GateRecordVO;
import com.hopes.bizz.close.gis.vo.HazardCarLayerVO;
import com.hopes.bizz.close.visitor.vo.ClosedPersonRecordVO;

import java.util.List;

/**
 * @author yumr
 * @ProjectName bizz
 * @Description 图层接口
 * @time 2024/2/23 9:41
 */
public interface ClosedLayerService {

    /**
     * 危险品车辆信息
     * @param applyId  预约Id
     * @return         结果
     */
    HazardCarLayerVO queryHazardCarInfo(Long applyId);

    /**
     * 图层中的卡口/门禁
     * @param parkCompanyTypeEnum  园区、企业枚举
     * @return       返回值
     */
    List<GateAccessLayerVO> queryGateAccessByType(CloseModuleEnums.ParkCompanyTypeEnum parkCompanyTypeEnum);


    /**
     * 卡口通行记录
     * @param gateRecordDTO  卡口DTO
     * @return               返回值
     */
    List<GateRecordVO> queryLayerGateRecord(GateRecordDTO gateRecordDTO);

    /**
     * 门禁通行记录
     * @param accessRecordDTO 查询对象
     * @return   返回值
     */
    List<ClosedPersonRecordVO> queryLayerAccessRecord(AccessRecordDTO accessRecordDTO);

    /**
     * 分区控制图层数据
     * @return  返回值
     */
    List<ClosedControlAreaEntity> queryLayerControlArea();

    /**
     * 园区道路图层接口
     * @param closedRoadDTO  对象
     * @return               返回值
     */
    List<ClosedRoadVO> queryLayerRoad(ClosedRoadDTO closedRoadDTO);



}
